package com.yidu.TAManagement.controller;

import com.yidu.TAManagement.entity.Ta;
import com.yidu.TAManagement.service.TaService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;

import java.util.HashMap;
import java.util.List;
import java.util.Map;

/**
 * TA交易数据控制类
 * @author 赵俊豪
 * @date 2022/12/11 13:32
 **/
@RestController
public class TaController {
    @Autowired
    private TaService taService;

    /**
     * 查询TA交易数据表
     * @param page 当前页
     * @param limit 每页显示数
     * @param ta Ta对象
     * @return map 数据
     */
    //这只是从数据库查询的一个方法，跟跳转界面没关系
    @RequestMapping("/SelectTa")
    public Map SelectTa(int page, int limit, Ta ta){
        //查询加分页
        List<Ta> talist = taService.SelectTa (page,limit,ta);
        //查行数
        int count = taService.SelectTaCount (ta);
        //定义一个map集合
        Map map=new HashMap ();
        map.put("code",0);
        map.put("msg","");
        map.put("count",count);
        map.put("data",talist);
        return map;
    }

    /**
     * 删除Ta数据
     * @param taId Ta编号
     * @return
     */
    @RequestMapping("/DeleteTa")
    public int DeleteTa(String taId) {
        System.out.println ("进来了删除的方法" + taId);
        int i = taService.DeleteTa (taId);
        if (i > 0) {
            System.out.println ("删除成功" + i);
        } else {
            System.out.println ("删除失败" + i);
        }
        return i;
    }

    /**
     * 新增Ta交易数据
     * @param ta Ta对象
     * @return
     */
    @RequestMapping("/InsertTa")
    public int InsertTa(Ta ta) {
        int lenght =  taService.TALength ();
        Ta ta1=null;
        if (lenght==0){
            ta1 = new Ta ("TA202302151",ta.getCashId (),ta.getFundId (),ta.getDealType (),ta.getQuantity (),ta.getCost (),
                    ta.getDealTime (),ta.getUnitPrice (),ta.getEndTime (),ta.getCommissionAgents (),ta.getMoney (),
                    ta.getPracticalMoney (),ta.getDealState (),ta.getRemark ());
        }else {
            //调用SelectMaxtaId拿到最大的Id
            String substring = taService.SelectMaxtaId().substring(2,11);
            //TA+获得的最大Id
            String id = "TA" + new com.yidu.BusinessParament.util.IdUtil ().createID (substring);
            ta1 = new Ta (id,ta.getCashId (),ta.getFundId (), ta.getDealType (), ta.getQuantity (), ta.getCost (),
                    ta.getDealTime (), ta.getUnitPrice (), ta.getEndTime (), ta.getCommissionAgents (), ta.getMoney (),
                    ta.getPracticalMoney (), ta.getDealState (), ta.getRemark ());
        }
        int i = taService.InsertTa (ta1);
        if (i > 0) {
            System.out.println ("添加成功" + i);
        } else {
            System.out.println ("添加失败" + i);
        }
        return i;
    }

    /**
     * 修改Ta交易数据
     * @param ta Ta对象
     * @return
     */
    @RequestMapping("/UpdateTa")
    public int UpdateTa(Ta ta){
        System.out.println("进来了修改的方法"+ta);
        int i = taService.UpdateTa (ta);
        if(i>0){
            System.out.println("修改成功"+i);
        }else{
            System.out.println("修改失败"+i);
        }
        return i;
    }
}
